package com.lkf.rpc.stub;

import io.netty.channel.ChannelHandlerContext;
import io.netty.channel.ChannelInboundHandlerAdapter;

/**
 * 网络容器响应结果控制器
 * 用于从netty的输入channel读取服务端返回的数据
 */
public class ResultHandler extends ChannelInboundHandlerAdapter {

    // 服务端响应内容
    private Object response;

    public Object getResponse() {
        return response;
    }

    /**
     * 从netty的channel中读取服务端返回的数据
     *
     * @param ctx channelHandler上下文操作
     * @param msg 服务端响应内容
     * @throws Exception
     */
    @Override
    public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception {
        response = msg;
        ctx.close();
    }
}
